#include<iostream>
using namespace std;
//注意这道题台阶多了都是指数级爆炸的所以得来long long
typedef long long LL;
const int N = 70;
LL a[N];
int main()
{
	//下楼梯改成上楼梯
	int n = 0;
	cin >> n;
	//对于第阶来说，应该存放1.对于第二阶来说应该存放2（0到2，一到2）
	//对于第三节来说应该存放4
	//4=1+2+1
	//所以a[0]应该等于1
	a[0] = 1;a[1] = 1;a[2] = 2;
	for (int i = 3;i <= n;i++)
	{
		a[i] = a[i - 1] + a[i - 2] + a[i - 3];
	}
	cout << a[n] << endl;
	return 0;
}